"""
需求：
流程：
    1.导包
    2.初始化ROS2客户端
    3.自定义节点类：
    4.调用spin函数，传入自定义类对象指针，
    spin又称回旋函数，当执行到spin时，又会回去执行一次函数，而不是退出，可以理解为for语句
    5.释放资源
"""
 
# 1.导包
import rclpy
from rclpy.node import Node
from std_msgs.msg import String
 
# 3.自定义节点类: 
class MyNode(Node):
    def __init__(self):
        super().__init__("zhenkeng_py",namespace="zuoxie_py")
        # 《3.5.3_话题重名_02话题设置》
        # 全局话题
        # self.pub = self.create_publisher(String,"/shi",10)

        # 相对话题
        # self.pub = self.create_publisher(String,"shi",10)

        # 私有话题
        self.pub = self.create_publisher(String,"~/vip",10)
 
def main():
    # 2.初始化ROS2客户端
    rclpy.init()
 
    # 4.调用spin函数，传入自定义类对象指针，
    rclpy.spin(MyNode())
 
    # 5.释放资源
    rclpy.shutdown()
 
if __name__ == '__main__':
    main()